Digital computer and form reader for inventory control and recording cash transactions

ABSTRACT

A digital computer employing hard wired control logic and a rotating memory drum system for inventory control, price changes and cash transactions. If desired, a novel form reader may be employed in conjunction with the computer to sense transactions and, in conjunction with the form itself, to actuate the computer at appropriate times. The computer and form reader are particularly suited for use in eating establishments where transaction speed is required.

United States Patent 11 1 Dillon et al.

[ Oct. 29, 1974 [54] DIGITAL COMPUTER AND FORM READER 3,111,576 11/1963 Lipschutz 235/61.11 D FOR INVENTORY CONTROL AND 3,176,414 4/1965 Leathers 35/48 B 3,299,254 1/1967 Dobbins; 235/6l.7 R RECORDING CASH TRANSACTIONS 3,408,632 10/1968 [75] Inventors: Neil J. Dillon; Boris R. Sincich, both 3,465,130 9/1969 of Los Angeles, Calif. 3,541,309 /1 70 3,639,732 2/1972 [73] Ass1gnee: TRW Data Systems, Inc., Torrance, 3,643,348 2/ 1972 Calif. 3,663,800 /1972 Myer 235/61.11 E 22 F1 d: F l 1 7 l 1 l e eh 9 3 Primary Examiner-Daryl W. Cook [21] Appl. No.1 332,887 Assistant Examiner-Robert M. Kilgore Related US Application Data Attorney, Agent, or FirmDaniel T. Anderson; Edwin [63] Continuation of Ser. N0. 105,497, Jan. 11, 1971. oser wllhe Kraw'tz 52 us. 01. ..235/61.l1 R, 235/61.11 E, [57] ABSTRACT 250/219 DC, 360/2 A digital computer employing hard wired control logic [51] Int. Cl G01 21/30, 606k 7/00, (106k 7/14 and a rotating memory drum system for inventory [58] Field of Search ..235/61.11 E, 61.11 D, control, price changes and cash transaction If 235/6l.l1 R, 61.12 N, 61.6 E, 61.7 B; sired, a novel form reader may be employed in con- 340/ 172.5; 35/48 R, 48 B; 250/219 DC junction with the computer to sense transactions and, in conjunction with the form itself, to actuate the [56] Ref r Cit d computer at appropriate times. The computer and UNITED STATES PATENTS form reader are particularly suited for use in eating 3,109,088 10/1963 Lyner 235/619 R estabhshmems Where transactlon Speed ls requlred 6 Claims, Drawing Figures Om Processor Word 7"- Clocking Counter I01 12 2o 21- 24 'Ishr 5 F lRaqister arm-1:

,1 Panel H Adfir [-23 {25A Source and 0 "am," a "Q",- Destinotion p Processor 1 SIIect '2 Control Logic c Rop'shr l l R O M P A Counter 1 E P I No 33 Control r36 l/Oihqidor l/O Drwers Poll C... .e. i F Logic .55 l

t cm 1 V 1 Character l/ORlcter'rs I10! P A Register R :91 323 V0 34J PAlENiEflums-lm 3.845.280

' sum nanrn 'PAIENTEllnr-nzslsn SHEET 0% 0F '8 7 PRICE &TAX CHANGE SAMPLE TEST FORM P P I x Q o o agmfiw u #3 a h RB SMALL WHOP MINI WPR PAIENTElluma m4 sum us 0? H1 lnseri Form Info Reader Reader Senses Form (Top Switch) 5;

Feed Form To Read Smiion READER CONTROL 7 Tesi All Sense Amps- For Edge of Form Stop Form set Amps- For Edge of Form COMPUTER CONTROL Advance Poll BLOCK "0' Feed Form v Count Look Fov First su To Block"l" BLOCK 1 Look For Secohd Clock Line V,- &

Siep To Block"2" O K 2 BLOCK 2 Look For And Store Dom Fig. 9A

BLO

Pmmmum 29 m4 sum 01 or 17 OP'ERAT MODE READ 8: UPDATE MODE Look For Third Clock Line Fig.9B

BLOCK 2 Store Tox Flog Advq Block Set Print Flog Doio N Look For Thlrd Look For Thlrd present Clock Line Clock Linei &

Adv. To Block Adv'. To Block stop Form stop Form Print The om Print "0" On stop Form Rood On Form Form I I Print "0" In Tux Row Foed For m BLOCK 3 Look For Next Look For And g gf Store Doto BLOCK 3 i F d F Look For Clock rm ee 0 Line 4 Look For And Advance To Store Doto Block 4 Look For Fourth Increment Hem BLOCK 4 Clock Lino Couni To (I) PAtENIEnum 29 \914 saw 08 0F 17 Advance To I Block "4" Stop Form Advance To Print Data Reed- Print"0" stop Form Block "0" 0n Form On Form i Q WRITE Look For End Prlnt Clerk of Form ggfbNsEa TAX READ Advance Item cm fg EQE. (50) READ H tii N (60) READ& CASH TALS CLEAR AND Look For And Store First Int. Proc. (09) Int. Processor Item 0 lnterru t I Processor Store Address Store Address (06) e i v I Fetch Contents Store ClerkF Enable l/O Of |{\d|d/r(e)ss J O READ IAOQE I. Enable l/O Y I Replace Contents Feed Form l 01 Address with l Zero'e REA 6 BLOCK 4 1 CLERR MODE ONLY Look For Next Increment 0| Clock Line Address 52' Add (I) To sum "110$ 17 Fig.9F

Digit Of Total Transaction BLOCK 5 Count i H Add RT To GT Add RT To FT Move RT To l/O Feed Form Look For Next b Enqie O Clock Line Feed Form Advance Dcnt ls Look For Nexi Clock Line stop Form g mg Print Next Digit 7 Stop Forfn Print First Feed Form Look For Next Line Or End Of F rm Advance Dcnt Clem Counters- And Black To (0) BLOCK 5 PAIENIEDnm 29 I974 [16! Interrupt Hos Occurred sum :17 or 17 l/O'Stort Read onl l/o'smn Redd And Cleor'Bfi] Interrupt Hos Occurred l/OvA l/O 'Conr'inue Read Only [El Interrupt Hos Occurred l/O 'Ccmipue Reed And Clear Elmerrupt Hos Occurred C9 IDAXX DRUM- B JUNO-2O FiglZ l/O Cont Up- Dare l/O'Siort Up-Dote @Ilnt. Hos Occurred l/O Buffer Contains Ist PTrcck Address IE] Int. Hos Occurred V0 Buffer Contains I ID DAXX B-PDRUM New 6 Di it#.

C vA

DIGITAL COMPUTER AND FORM READER FOR INVENTORY CONTROL AND RECORDING CASH TRANSACTIONS This is a continuation, of application Ser. No. 105,497, filed Jan. 11, 1971.

BACKGROUND OF THE INVENTION This invention relates to a digital computer employing a rotating drum memory and hard wired control logic and more specifically to the use of such a computer system in conjunction with a keyboard or a new and novel form reader, to provide an inventory count, tax and price change and a price readout for transactions. The invention is particularly applicable for use in fast food eating establishments and businesses having similar accounting and/or transaction modes.

The present invention also discloses programs or processes for operating the computer and the form reader in a simple and unique manner. Basically the form reader and the process involving its use, is designed to sense data and transmit it to the computer, actuate the computer to perform specific operations at a given time, and to print out data from the computer using standardized forms. The computer program, on the other hand, is designed to operate the arithmetic portion of the computer itself, as well as manipulation and storage of data. While interrelated with the form reader operation, the computer program involves a separate and distinct function. The concept of interrupting the computer using a form itself not only facilitates a rapid input and output of data, but also permits a more simple construction and operation of the computer than would otherwise be possible.

BRIEF DESCRIPTION OF THE DRAWINGS The invention will become more apparent from the description and the drawings to follow in which:

FIGS. 1 and 2 are block diagrams showing two aspects of the computer of the present invention;

FIGS. 3, 4 and 5 are schematic perspective views of the form reader unit of this invention;

FIGS. 6 and 7 show forms employed to read data into and out of the computer;

FIGS. 9 (A-F) shows the program flow command;

FIG. 10 shows the operating codes interrupting address and instruction word format; and

FIGS. 11 (A-D) and 12 show the detailed program flow for the computer.

DESCRIPTION OF THE PREFERRED EMBODIMENT The block diagram of the computer shown in FIG. 1 includes a rotating magnetic drum 10 having separate tracks for prices, quantities and a clock track. A and B accumulators 11,12 are registers which hold numbers to be added while a 2 digit C register and running total register 13,14 work together to maintain a constant count of accumulated dollar amounts. An input-output (I/O) buffer 15 is a serially loaded recirculating register employed as the primary data interface between the internal computer circuits and the form reader. An adder circuit 16 is provided to add (or subtract) the addend and augend in the A and B accumulators respectively, the result of the operation occurring in the adder being recycled back into the A accumulator; the B accumulator in an add operation remains unchanged. Clock pulses from the drum system clock track are forwarded to a clock distribution circuit 17 which emits these pulses for use in different parts in the computer. The arrangement compensates for variations in memory drum speed when reading data out of the drum. A shift register 20 (FIG. 2) functioning as a bit counter is employed to divide the digit flow from the drum into digit pulses. A word counter 21 receives digit pulses from the bit counter 20 and divides them into discrete word pulses, which are continually fed to a coincidence circuit 22. A source and destination select circuit 23 is provided to route signals into and out of the I/O buffer 15, accumulators, registers and the drum.

The logic and sequencing portion of the computer comprises an operator control panel 24 for selecting the particular mode in which the computer is to be operated; this will include (a) item and quantity transactions, (b) readout of data from the memory drum such as item quantity totals, total number of transactions etc., and (c) updating of prices, taxes etc. A hard wired processor control logic circuit 25 generates a series of program step pulses or jump pulses depending on the current instruction and routes these program pulses to the appropriate location. A program address counter 26 is provided which functions as a register where the address of a current instruction word is recorded. Pulses from the processor control logic circuit 25 advance the program address counter by 1 step or cause the program address counter to jump in the program. A hard-wired, read-only memory 27 converts an address output and breaks down an instruction from the program address counter 26 into an instruction word and forwards these words in sequence to an instruction register 30 where they are held temporarily pending their execution. If the command held in the instruction register is an addition command, it will be accepted by the process control logic, decoded and then forwarded to the adder. The remaining type of commands held in the instruction register will be decoded in an operation decode portion 25A of the processor control logic and be accepted in the coincidence circuit for transmission (along with its coincident pulse word from the data track) to the source and destination select 23 and thence to the registers or the drum system.

.The input/output (l/O) section of the computer includes an input-output receiver 31 which transmits pulses from a suitable input such as from a photosense circuit or keyboard to the input-output (I/O) register 15 and control character register 32. The latter stores data pulses from the [/0 receiver for transmission to an [/0 driver 33. The pulses from the I/O register are sent to the source and destination select circuit 23. Driver 33 operates a printer (not shown) and a form reader in input-output receiver 31. A poll counter is provided to determine if the computer is operating a given keyboard. When the computer time is free, the poll counter will activate the input-output driver to commence operations on a specific keyboard. A program address register 34 is provided to hold address words and transmit them to the program address counter 26 during an interrupt by an I/O control logic. An inputoutput clocking circuit 35 synchronizes scanning cycles of the form reader, movement of the form through the reader, and printer actuation. The clocking circuit also sequences the transfer of program addresses to the program address counter 26 from the program address register 34, and synchronizes the transfer with the input pulses from the photosense circuit. An input-output (l/O) control logic circuit 36 emits sequenced pulses to produce a program address in register 34; this address is determined by the respective setting in the operator The form reader unit of this invention is shown schematically in H68. 3, 4 and 5 and comprises a photo light block 50 having a plurality of light windows 51, a light source (not shown) and a housing 52. Each light control panel 24 for transaction, readout and update 5 window is fed by an inlet optic fiber bundle 53 from the modes and by the control character register 32. The housing. Light emitted by an individual window is processor control logic circuit 25 and the I/O control passed along an outlet fiber bundle 54 from each winlogic circuit 36 interchange data and interrupt addow to a photo sensor device. A scanning circuit, in the dresses from the program address register 34. Thus, photosensor, senses light (or no light) pulses from each program addresses from the program address register l0 window in sequence. A slotted form guide 55 is pro- 34 and data from the photosense circuits or keyboard vided immediately adjacent the light block and the inin the l/() receivers are timed by clocking circuit 35 to dividual array of light windows are exposed along the coincide in the source and destination select circuit 23. slotted portion of the guide. A spring 56 is provided along the form guide 55. A form 57, which will be de- The routing of instruction words is shown in FIG 2. 15 scribed in more detail subsequently, is passed under the Typical drum track locations, computer register adspring 56 and in immediate proximity to the light windresses and command codes are shown in the following dows 51. The spring insures the form 57 is as close as table. possible to the array of light windows. A drive wheel 58 TABLE 1 DRUM TRACK P Track 5% TAX Q Track Address Constants Address 35 ITEM PRICES 35 M QUANTITY TOTALs 35 36 37 3s 39 40 TAX BREAKPOINT 14,, 000089 41 1c, 0 TAX 000010 42 K3 3st TAX 000068 43 K 5 TAX 000000 44 K, 7 TAX 000000 1 THRU 9 DRAWER 45 K. 1;: TAX 000027 45 TOTALS 46 K. 412 TAX 000089 46 47 K 6 TAX 000000 47 1 THRU 9 DRAWER 48 K M TAX 000000 43 TOTALs 49 K 2 TAX 000047 49 50 PP X0 TAX RATE 000000 50 51 PP X1 TAX RATE 005000 51 GRAND TOTAL 52 PP, X2 TAX RATE 010000 52 TAXABLE TOTAL 53 PP X3 TAX RATE 015000 53 NONTAXABLE TOTAL 54 PP x4 TAX RATE 020000 54 TOTAL TAX 55 PP X5 TAX RATE 025000 55 TRANSACTION COUNT 56 PP X6 TAX RATE 030000 56 57 PP X7 TAX RATE 035000 57 5s PP X8 TAX RATE 040000 58 PARTIAL TAX TOTAL 59 PP X9 TAX RATE 045000 59 ACTIVE DRAWER 60 000050 000050 60 61 000001 000001 61 62 800000 62 63 K2, 0;: TAX 000009 63 64 K23 3 TAX 000069 64 65 K25 5st TAX 000100 65 66 K2, 7 TAX 000000 66 67 K2, 1 TAX 000029 67 68 R2 4r TAX 0000119 68 69 K2,, 6t? TAX 000000 69 70 K2,; 11 TAX 000000 70 FOREVER TOTAL 71 K2, 2 TAX 000049 Computer Registers Command Codes (Op. Code) St A ACCUMULATOR 0001 FETCH TO A OR B ACCUM. 82 B ACCUMULATOR 0010 STORE FROM A OR B ACCUM. 83 C REGISTER 0011 ADD A B 114 RT REGISTER 0100 Shift* A ACCUM. 88 no BUFFER 0101 INCC 1NCREMENTC+1 0110 DECC DECREMENTC1 x0 FORCED ADDRESS* 0111 EIO ENABLE V0 1000 INTERROGATE l/O 1001 JUNC JUMP UNCONDITIONAL 1010 JEO JUMPA=B 1011 .INEO JUMP A 9 B 1100 JLEQ JUMP A. B 1101 JCNEO JUMP C NOT ZERO 1110 SUB A B 1111 CAL A i B (KEYSWlTCH) 

1. A method for sensing transaction data and recording the data on an input-output form bearing a plurality of clock lines adjacent a row of data blocks and in the memory of a digital computer comprising the steps of: feeding the form containing the data into a form reader; scanning a row of blocks adjacent the clock line for quantity of an item or price data until a data mark corresponding to a clock line is sensed; stopping the form for a time interval; storing sensed data in the Memory; continuing the form feeding until succeeding clock lines and data marks have been sensed; repeating the scan, stop and data storage for each succeeding row of blocks corresponding to a clock line until all the data have been sensed; calculating quantity x price and storing the results of the transaction in the memory; and recording the data on the form.
 2. The method of claim 1 in which data stored in the memory is updated by each transaction.
 3. The method of claim 1 in which the data from the blocks is printed onto the form during the time interval.
 4. A method for sensing transaction data and recording the data on an input-output form bearing a plurality of clock lines adjacent a row of data blocks and in the memory of a digital computer comprising the steps of: feeding the form containing the data into a form reader; scanning a row of blocks adjacent the clock line for quantity of an item or price data until a data mark corresponding to a clock line is sensed; stopping the form for a time interval; storing sensed data in the memory; continuing the form feeding until succeeding clock lines and data marks have been sensed; repeating the scan, stop and data storage for each succeeding row of blocks corresponding to a clock line until all the data have been sensed; calculating quantity of an item price and quantity x price and storing the results of the transaction in the the memory; and recording the data on the form.
 5. The method of claim 4 in which data stored in the memory is updated by each transaction.
 6. The method of claim 4 in which the data from the blocks is printed onto the form during the time interval. 